Much of the memory storage devices produced for use in modern computer systems, mini-computers and micro-computers in the present, make use of read only memories or ROMs. Their fabrication is such that, once produced by large scale manufacturing processes, there is no economically feasible way to alter the contents of any word or any individual bit therein in a practical manner without destroying the memory because ROMs today are made in the form of integrated circuits. They generally include a large number of ROM memories in an array, and there is a significant probability that one or more of the data storage locations may need alteration.
Thus, after final tests are made on such a memory, it is possible to determine which memories are completely perfect in all respects and which memories contain data-bit locations which are improper and which would output undesired or inaccurate data. The problem arises as to whether to scrap such memory arrays which are incorrect, often at a very large cost, or to do something to rehabilitate those portions of the memory which have inaccurate or defective portions.
These ROMs, or memory arrays of ROMs, are generally manufactured in large scale batch techniques which involve very considerable expense. Generally only a moderate percentage of such manufactured memory devices turn out to be perfect, and thus the question of rehabilitation of the imperfect devices, or the data therein, becomes of some importance. Thus a number of efforts have been made in the prior art to make such defective memories into usable units which will not have to be scrapped or thrown away. This concept can also apply to "Programmable ROMs" when the reprogramming costs for each ROM are excessive for minor changes.